package com.zh.mouldleapp.manager;

import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.preference.PreferenceManager;

/**
 * 应用程序配置类：用于保存用户相关信息及设置
 * 
 * @author liux (http://my.oschina.net/liux)
 * @version 1.0
 * @created 2012-3-21
 */
public class AppConfig {

	private final static String APP_CONFIG = "config";

	private Context mContext;
	private static AppConfig appConfig;

	/**
	 * 
	 * @函数名称 : isAutoLogin
	 * @功能描述 : 是否自动登录账号
	 * @参数及返回值说明：
	 * @param context
	 * @param flag
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static boolean isAutoLogin(Context context) {
		return getSharedPreferences(context).getBoolean("isAutoLogin", false);
	}

	/**
	 * 
	 * @函数名称 : setIsAutoLogin
	 * @功能描述 : 设置是否自动登录账号
	 * @参数及返回值说明：
	 * @param context
	 * @param flag
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static void setIsAutoLogin(Context context, boolean flag) {
		SharedPreferences pref = getSharedPreferences(context);
		Editor editor = pref.edit();
		editor.putBoolean("isAutoLogin", flag);
		editor.commit();
	}

	/**
	 * 
	 * @函数名称 : getAccountPhone
	 * @功能描述 : 获取通行证
	 * @参数及返回值说明：
	 * @param context
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static String getAccountPhone(Context context) {
		return getSharedPreferences(context).getString("accountPhone", "");
	}

	/**
	 * 
	 * @函数名称 : setAccountPhone
	 * @功能描述 : 设置账号通行证
	 * @参数及返回值说明：
	 * @param context
	 * @param flag
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static void setAccountPhone(Context context, String accountPhone) {
		SharedPreferences pref = getSharedPreferences(context);
		Editor editor = pref.edit();
		editor.putString("accountPhone", accountPhone);
		editor.commit();
	}

	/**
	 * 
	 * @函数名称 : getAccountPwd
	 * @功能描述 : 获取保存的密码
	 * @参数及返回值说明：
	 * @param context
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static String getAccountPwd(Context context) {
		return getSharedPreferences(context).getString("accountPwd", "");
	}

	/**
	 * 
	 * @函数名称 : setAccountPwd
	 * @功能描述 : 设置账号保存密码
	 * @参数及返回值说明：
	 * @param context
	 * @param flag
	 * 
	 * @修改记录：
	 * @日期：2013-3-28 下午2:24:51 修改人：黄秋
	 * @描述 ：
	 * 
	 */
	public static void setAccountPwd(Context context, String accountPwd) {
		SharedPreferences pref = getSharedPreferences(context);
		Editor editor = pref.edit();
		editor.putString("accountPwd", accountPwd);
		editor.commit();
	}

	/**
	 * 清空sharepreference
	 * 
	 * @param context
	 */
	public static void clear(Context context) {
		SharedPreferences pref = getSharedPreferences(context);
		Editor editor = pref.edit();
		editor.clear();
		editor.commit();
	}

	/**
	 * 获取Preference设置
	 */
	public static SharedPreferences getSharedPreferences(Context context) {
		return PreferenceManager.getDefaultSharedPreferences(context);
	}

	/*
	 * 获取versionname
	 */
	public static String getVersonName(Context context) {
		return getSharedPreferences(context).getString("versionName", "-1");
	}

	/*
	 * 设置versionname
	 */
	public static void setVersionName(Context context, String versionname) {
		SharedPreferences pref = getSharedPreferences(context);
		Editor editor = pref.edit();
		editor.putString("versionName", versionname);
		editor.commit();
	}
}
